package com.habdqn.studentmanager.service;

import java.io.InputStream;
import java.io.OutputStream;

import com.github.pagehelper.PageInfo;
import com.habdqn.studentmanager.bean.Employment;
import com.habdqn.studentmanager.bean.Student;
import com.habdqn.studentmanager.bean.condition.BigDecimalCondition;
import com.habdqn.studentmanager.bean.condition.DateCondition;

/**
 * 就业信息服务类
 * 
 * @author Administrator
 * 
 *         2017年5月22日
 *
 */
public interface EmploymentService {

	/**
	 * 添加就业信息
	 * 
	 * @param employment
	 */
	void add(Employment employment);

	/**
	 * 根据指定条件获得就业列表
	 * 
	 * @return
	 */
	PageInfo<Employment> findList(Student bean, BigDecimalCondition salary, DateCondition employmentDate,
	        Integer pageNum, Integer pageSize);

	/**
	 * 更新操作
	 * 
	 * @param bean
	 */
	void update(Employment bean);

	/**
	 * 根据id逻辑删除
	 * 
	 * @param id
	 */
	int delte(Integer id);
	
	/**
	 * 根据id物理删除
	 * 
	 * @param id
	 * @return
	 */
	int realDel(Integer id);

	/**
	 * 查找就业信息
	 * 
	 * @param bean
	 * @return
	 */
	Employment find(Employment bean);

	/**
	 * 导出复合条件的就业学员信息
	 * 
	 * @param bean
	 * @param salary
	 * @param employmentDate
	 * @param pageNum
	 * @param pageSize
	 */
	void export(Student bean, BigDecimalCondition salary, DateCondition employmentDate, OutputStream out);
	
	/**
	 * 导入就业信息
	 * 
	 * @param is
	 */
	void importEmp(InputStream is);
	
}
